iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 23
1
自我挑戰組

從0開始,一起學C語言吧!系列 第 23

從0開始,一起學C語言吧!(Day23)

  • 分享至 

  • xImage
  •  

Day23-陣列

那今天要教的是陣列
陣列(array)是最基本的資料結構之一,宣告一個陣列,等同於宣告多個同樣型態的變數;陣列最大的好處是:所宣告的變
數在記憶體中是連續的。當3個整數變數被宣告時,程式所得到的記憶體位址不一定或連續,但當一個具有3個元素的整數陣列被宣告時,程式會要求一個連續的記憶體位址,這個特性對工程師很有利。
範例1:

#include<stdio.h>
#include<stdlib.h>
int main(){
	int array[10];
	array[0]=10;
	array[1]=9;
	array[6]=1;
	printf("%d %d %d",array[0],array[1],array[6]);
	system("pause");
}

印出:
https://ithelp.ithome.com.tw/upload/images/20190924/20119958rbyGulr9Um.png

錯誤的範例:
https://ithelp.ithome.com.tw/upload/images/20190924/20119958lE1CbQUgTl.png
解釋:錯誤的那行是語法錯誤,因為陣列的元素個數不可以為一個變數,陣列中的元素個數必須為常數

範例2: 一維陣列設計學生成績系統

#include<stdio.h>
#include<stdlib.h>
in	for(i=0;i<10;i++){
		printf("請輸入學生%d的成績:",i+1);
		scanf("%d",&StuScore[i]);
t main(void){
	int i,StuScore[10],total=0;
	}
	for(i=0;i<10;i++)
		total=total+StuScore[i];
	printf("平均成績為:%f\n",(double)total/10);
	system("pause");
}

印出:
https://ithelp.ithome.com.tw/upload/images/20190924/20119958qt0jbECguA.png
解釋:
StuScore為宣告整數陣列,total變數的初值設為0,再來還利用到for迴圈

範例3: 一元四次方程式
公式:f(x)=〖x^4+2x〗^(2 )+x+4

#include<stdio.h>
#include<stdlib.h>
int S(int ,int );
int main(void){
	int i,f[5],x,ans=0;
	for(i=0;i<5;i++){
	   printf("請輸入方程式中 %d 次項的係數",i);
	   scanf("%d",&f[i]);
	}
	printf("請輸入欲計算的變數值");
	scanf("%d",&x);
	for(i=0;i<5;i++){
		ans=ans+S(x,i)*f[i];
	}
	printf("f(%d)=%d\n",x,ans);
	system("pause");
}
int S(int x,int n){
	int i,tmp=x;
	if(n==0) return 1;
	for(i=1;i<n;i++)
	  x=x*tmp;
	return x;
}

印出:
https://ithelp.ithome.com.tw/upload/images/20190924/20119958SeCjbKkA2m.png
那今天就到這裡拉
謝謝大家的閱讀!!


上一篇
從0開始,一起學C語言吧!(Day22)
下一篇
從0開始,一起學C語言吧!(Day24)
系列文
從0開始,一起學C語言吧!30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言